# 有语的第一个项目实践，外星人大战项目
# 第二章，设置类，设置游戏内一些主要的属性
# 初始化控制游戏外观和飞船速度的属性
# 22/9/8


class Settings:
    def __init__(self):
        """屏幕的1长、宽"""
        self.fleet_direction = None
        self.fleet_drop_speed = None
        self.alien_speed = None
        self.screen_wight = 1200
        self.screen_high = 800

        """主屏幕的背景颜色设置"""
        self.bg_color = (255, 255, 255)

        """飞船移动速度"""
        self.ship_speed = 1.5
        self.ship_limit = 3

        """子弹的相关属性"""
        self.bullet_speed = 1.0
        self.bullet_width = 300
        self.bullet_height = 15
        self.bullet_color = (155, 149, 201)
        """设置最大允许的子弹的数量"""
        self.bullets_allowed = 3

        # 加快游戏界行走的速度
        self.speedup_scale = 1.1
        self.initialize_dynamic_settings()

    def initialize_dynamic_settings(self):
        """外星人的移动速度"""
        self.alien_speed = 0.5
        # 向下移动速度
        self.fleet_drop_speed = 10
        # fleet_direction=1右移
        self.fleet_direction = 1
        # 杀死外星人获得的分数
        self.alien_points = 50

    def increase_speed(self):
        """提高速度设置"""
        self.ship_speed *= self.speedup_scale
        self.bullet_speed *= self.speedup_scale
        self.alien_speed *= self.speedup_scale
